package base;

import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;

import java.net.URL;

public class Base {
    private static AppiumDriver driver;
    public  void  starUp() throws Exception {
        DesiredCapabilities capabilities = new DesiredCapabilities();
        //设置所需的浏览器
        capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
        //指定测试平台
        capabilities.setCapability("platformName", "Android");
        //指定测试机的ID,通过adb命令`adb devices`获取
        capabilities.setCapability("deviceName", "127.0.0.1:62025");
        //安卓对应的版本
        capabilities.setCapability("platformVersion", "5.1.1");
        //将上面获取到的包名和Activity名设置为值
        capabilities.setCapability("appPackage", "com.ksbao.nursingstaffs");
        capabilities.setCapability("appActivity", "com.ksbao.nursingstaffs.SplashActivity");
        //noReset，这个参数用来控制是否清除session信息：
        //1、noReset不勾选，如果上一个测试用例登录成功过了，下一个测试用例，在打开app时，进来的还是app打开的初始页面，不会记录登录状态。
        //2、noReset勾选，如果上一个测试用例登陆成功了，下一个测试用例，在打开app时，进来的页面是登录成功后的页面，会保持登录状态
        capabilities.setCapability("noReset",false);
        //每次启动时覆盖session，否则第二次后运行会报错不能新建session
        capabilities.setCapability("sessionOverride", true);
        // 默认选择接受弹窗的条款，有些app启动的时候，会有一些权限的弹
        capabilities.setCapability("autoAcceptAlerts",true);
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
//        //支持中文
//        capabilities.setCapability("unicodeKeyboard","True");
    }
}
